# Maintainer: Tobias Powalowski <tpowa@archlinux.org>

pkgname=seabios
pkgver=1.11.0
pkgrel=1
pkgdesc="A 16-bit x86 bios"
arch=('any')
url="http://www.coreboot.org/SeaBIOS"
license=('GPL3' 'LGPL3')
makedepends=('iasl' 'python2' 'inetutils')
options=('!makeflags' '!strip')
source=(http://code.coreboot.org/p/seabios/downloads/get/${pkgname}-${pkgver}.tar.gz
        config.coreboot
        config.seabios-128k
        config.seabios-256k
        config.vga.isavga
        config.vga.stdvga
        config.csm
        config.vga.cirrus
        config.vga.qxl
        config.vga.vmware)
sha1sums=('ad679df075d888cbdb1233817c8bd101e8c8303e'
          '5f2adb09c9006def1719b8cbd4792f14a7c7f7c9'
          '7a4ec70237476c7cdd78589b069d0d39dfeaa8eb'
          '05b912a291994226049103cbe6754976cc03532d'
          'd56482f6ee0bf9633c551b10e99e24c74d9ece1e'
          '54d4edf6eccf30883aedca348b9d2f125502fcdb'
          '590739c1d5dc6cb63bdf311ee1cfbcde6c0ccc0f'
          '84a44c04e74a09affae0d1a6e50800d10997108f'
          '5a1316a0081f91acc300f57372de18fa9c67415e'
          '5b017b16aec445df873618aaebd154aa97107148')

# build routine from fedora
build_bios() {
  make clean distclean
  cp $1 .config
  make oldnoconfig V=1

  make V=1 $4

  cp out/$2 binaries/$3
}

prepare() {
  cd ${pkgname}-${pkgver}
  rm -rf binaries
  sed -i 's/python/python2/g' Makefile
  mkdir binaries
}

build() {
  cd ${pkgname}-${pkgver}
  # seabios
  build_bios ${srcdir}/config.csm Csm16.bin bios-csm.bin
  build_bios ${srcdir}/config.coreboot bios.bin.elf bios-coreboot.bin
  build_bios ${srcdir}/config.seabios-128k bios.bin bios.bin
  build_bios ${srcdir}/config.seabios-256k bios.bin bios-256k.bin
  # seavgabios
  for config in ${srcdir}/{config.vga.isavga,config.vga.stdvga,config.vga.cirrus,config.vga.qxl,config.vga.vmware}; do
    name=${config#*config.vga.}
    build_bios ${config} vgabios.bin vgabios-${name}.bin out/vgabios.bin
  done
}

package() {
  cd ${pkgname}-${pkgver}
  install -Dm644 -t "${pkgdir}/usr/share/qemu" binaries/*.bin
}

